package com.xintool.window.Buttons;

import javax.swing.*;
import java.awt.*;

public class Button_clhq extends ButtonFactory{
    @Override
    public JButton showButton() {
        // 利用按钮工厂创建按钮实例
        JButton button_clhq = ButtonFactory.getButton("材料获取");//按钮显示文本为“材料获取”

        //添加点击事件监听
        button_clhq.addActionListener(e -> {

            JFrame frame = new JFrame("材料获取");
            frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
            frame.setSize(280, 400);
            frame.setLocationRelativeTo(null);

            // 创建长图
            // 加载图片（使用类加载器确保路径正确）
            ImageIcon imageIcon = new ImageIcon(getClass().getResource("/static/cailiao.png"));


            // 检查图片是否加载成功
            if (imageIcon.getImage().getWidth(null) < 0) {
                JOptionPane.showMessageDialog(frame, "图片加载失败！");
                return;
            }
            JLabel imageLabel = new JLabel(imageIcon);

            // 添加滚动条
            JScrollPane scrollPane = new JScrollPane(imageLabel);
            // 设置水平滚动条策略为根据需要显示
            // JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED 表示当内容超出视图宽度时显示水平滚动条，否则不显示
            scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
            // 设置垂直滚动条策略为总是显示
            // JScrollPane.VERTICAL_SCROLLBAR_ALWAYS 表示无论内容是否超出视图高度，都始终显示垂直滚动条
            scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);

            // 添加滚动面板到窗口
            frame.add(scrollPane, BorderLayout.CENTER);

            frame.setVisible(true);
        });
        return button_clhq;
    }
}

